﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using DataAccessComponents;
using BusinessLogicLayer;
namespace inzDesktop
{
    /// <summary>
    /// Interaction logic for windowDodajPracownika.xaml
    /// </summary>
    public partial class windowDodajPracownika : Window
    {
        public windowDodajPracownika()
        {
            InitializeComponent();
            inicjalizujZawartosc();
        }

        public void inicjalizujZawartosc()
        {
            // Ustawnianie obiektu pracownika
            Pracownik pracownik = new Pracownik();

            if (!string.IsNullOrEmpty(pracownik.Haslo))
            {
                tbHaslo.IsReadOnly = true;
            }

            this.DataContext = pracownik;

            StanowiskoBL staBL = new StanowiskoBL();
            UprawnienieBL uprBL = new UprawnienieBL();
            OddzialBL oddBL = new OddzialBL();
            // Pobieranie rodzajów stanowiska
            cbStanowisko.ItemsSource = staBL.pobierzListe();
            // Pobieranie rodzajów uprawnień
            cbUprawnienia.ItemsSource = uprBL.pobierzListe();
            // Pobieranie oddzial
            cbOddzial.ItemsSource = oddBL.pobierzListe();
            // Uzupełnianie cobobox listą województw
            IList<string> wojewodztwa = new List<String>();
            wojewodztwa.Add("mazowieckie");
            wojewodztwa.Add("podlaskie");
            wojewodztwa.Add("lubelskie");
            wojewodztwa.Add("śląskie");
            wojewodztwa.Add("pomorskie");
            wojewodztwa.Add("zachodnio-pomorskie");
            wojewodztwa.Add("kujawsko-pomorskie");
            wojewodztwa.Add("warmińsko-mazurskie");
            wojewodztwa.Add("lubuskie");
            wojewodztwa.Add("wielkopolskie");
            wojewodztwa.Add("małopolskie");
            wojewodztwa.Add("dolno-śląskie");
            wojewodztwa.Add("opolskie");
            wojewodztwa.Add("podkarpackie");
            wojewodztwa.Add("świętokrzyskie");
            wojewodztwa.Add("łódzkie");
            cbWojewodztwo.ItemsSource = wojewodztwa;
        }

        private void btbDodajPracownika_Click(object sender, RoutedEventArgs e)
        {
            if (Validacja.IsValid(LayoutRoot))
            {
                MessageBoxResult odp = MessageBox.Show("Czy napewno chcesz dodać nowego pracownika?", "Pytanie", MessageBoxButton.YesNo, MessageBoxImage.Question);

                if (odp == MessageBoxResult.Yes)
                {                 
                    // Uzupełnianie obiektu pracownik danymi
                    Pracownik pracownik = this.DataContext as Pracownik;                 
                    
                    // Ustalanie hasła tymczasowego, gdy hasło jest puste
                    pracownik.ustalHalso(tbHaslo.Text);         

                    PracownikBL pracownikBL = new PracownikBL();
                    int idPracownik = pracownikBL.dodaj(pracownik);


                    if (idPracownik > 0)
                    {
                        DialogResult = true;
                    }
                    else
                    {
                        DialogResult = false;
                    }
                }
            }else
                MessageBox.Show("Wprowadzone zostały niepoprawne dane.", "Błąd", MessageBoxButton.OK, MessageBoxImage.Error);
        }
    }
}
